package com.ftg.learn.lesson4;

/**
 * 练习
 *
 * @author kangjx
 * @version 1.0
 * @date 2023/6/15 下午2:08
 */
public class ArrayPractice01 {

    /**
     * 让一个for循环成圈
     * @param arr    数组
     * @param circle 圈数
     */
    public static void joseph(int[] arr, int circle) {
        int min = 0;
        for (int i = min, x = 0; x < circle * arr.length; i++, x++) {
            System.out.println(arr[i]);
            if (i == arr.length - 1) {
                i = min - 1;
            }
        }
    }

    /**
     * 环的第二种方式
     * @param arr    数组
     * @param circle 圈数
     */
    public static void joseph01(int[] arr, int circle) {
        int min = 0;
        for (int i = min; i < circle * arr.length; i++) {
            int temp = i / arr.length;
            System.out.println( temp == 0 ? arr[i] : arr[i - temp * arr.length]);
        }
    }

    /**
     * 第三种
     * @param arr    数组
     * @param circle 圈数
     */
    public static void joseph02(int[] arr, int circle) {
        for (int i = 0; i < circle; i++) {
            for (int i1 = 0; i1 < arr.length; i1++) {
                System.out.println(arr[i1]);
            }
        }
    }

    public static void main(String[] args) {
        int[] arr = {1, 2, 3};

        joseph01(arr, 3);

//        for (int i = 0; i < arr.length; i++) {
//            System.out.println(arr[i]);
//        }
//        for (int i = 0; i < arr.length; i++) {
//            System.out.println(arr[i]);
//        }
//
//        for (int i = 0; i < 2; i++) {
//            for (int i = 0; i < arr.length; i++) {
//                System.out.println(arr[i]);
//            }
//        }

    }

}
